package com.web.handler.entity;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.SerializableSerializer;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.ToString;

@ToString
@ApiModel
public class ProviderTransaction extends SerializableSerializer {

	private static final long serialVersionUID = 1L;

	public static DateTimeFormatter yyyyMMdd = DateTimeFormatter.ofPattern("yyyyMMdd");
	
	@ApiModelProperty("txType")
	private String txType;
	@ApiModelProperty("customerNo")
	private String customerNo;
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyyMMdd")
	@ApiModelProperty("tradedate")
	private LocalDate tradeDate;
	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyyMMdd")
	@ApiModelProperty("valueDate")
	private LocalDate valueDate;
	@ApiModelProperty("excde")
	private String excde;
	@ApiModelProperty("accountNo1")
	private String accountNo1;
	@ApiModelProperty("currency1")
	private String currency1;
	@ApiModelProperty("amount1")
	private BigDecimal amount1;
	@ApiModelProperty("accountNo2")
	private String accountNo2;
	@ApiModelProperty("currency2")
	private String currency2;
	@ApiModelProperty("amount2")
	private BigDecimal amount2;
	@ApiModelProperty("buySell")
	private String buySell;
	@ApiModelProperty("srcJnlNo")
	private String srcJnlNo;
	@ApiModelProperty("bankCostRate")
	private BigDecimal bankCostRate;
	@ApiModelProperty("returnCode")
	private String returnCode;
	@ApiModelProperty("returnMsg")
	private String returnMsg;
	
	public String getReturnCode() {
		return returnCode;
	}
	public void setReturnCode(String returnCode) {
		this.returnCode = returnCode;
	}
	public String getReturnMsg() {
		return returnMsg;
	}
	public void setReturnMsg(String returnMsg) {
		this.returnMsg = returnMsg;
	}
	public LocalDate getTradeDate() {
		return tradeDate;
	}
	public void setTradeDate(LocalDate tradeDate) {
		this.tradeDate = tradeDate;
	}
	public LocalDate getValueDate() {
		return valueDate;
	}
	public void setValueDate(LocalDate valueDate) {
		this.valueDate = valueDate;
	}
	public String getExcde() {
		return excde;
	}
	public void setExcde(String excde) {
		this.excde = excde;
	}
	public String getTxType() {
		return txType;
	}
	public void setTxType(String txType) {
		this.txType = txType;
	}
	public String getCustomerNo() {
		return customerNo;
	}
	public void setCustomerNo(String customerNo) {
		this.customerNo = customerNo;
	}
	public String getAccountNo1() {
		return accountNo1;
	}
	public void setAccountNo1(String accountNo1) {
		this.accountNo1 = accountNo1;
	}
	public String getCurrency1() {
		return currency1;
	}
	public void setCurrency1(String currency1) {
		this.currency1 = currency1;
	}
	public BigDecimal getAmount1() {
		return amount1;
	}
	public void setAmount1(BigDecimal amount1) {
		this.amount1 = amount1;
	}
	public String getAccountNo2() {
		return accountNo2;
	}
	public void setAccountNo2(String accountNo2) {
		this.accountNo2 = accountNo2;
	}
	public String getCurrency2() {
		return currency2;
	}
	public void setCurrency2(String currency2) {
		this.currency2 = currency2;
	}
	public BigDecimal getAmount2() {
		return amount2;
	}
	public void setAmount2(BigDecimal amount2) {
		this.amount2 = amount2;
	}
	public String getBuySell() {
		return buySell;
	}
	public void setBuySell(String buySell) {
		this.buySell = buySell;
	}
	public String getSrcJnlNo() {
		return srcJnlNo;
	}
	public void setSrcJnlNo(String srcJnlNo) {
		this.srcJnlNo = srcJnlNo;
	}
	public BigDecimal getBankCostRate() {
		return bankCostRate;
	}
	public void setBankCostRate(BigDecimal bankCostRate) {
		this.bankCostRate = bankCostRate;
	}
	
}
